package com.ruoyi.pingjiao.service.impl;

import java.util.List;

import com.alibaba.fastjson2.JSONArray;
import com.alibaba.fastjson2.JSONObject;
import io.jsonwebtoken.lang.Collections;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.pingjiao.mapper.EvaluationItemMapper;
import com.ruoyi.pingjiao.domain.EvaluationItem;
import com.ruoyi.pingjiao.service.IEvaluationItemService;

/**
 * 评教问卷项记录管理Service业务层处理
 * 
 * @author 胡浩鹏
 * @date 2022-10-25
 */
@Service
public class EvaluationItemServiceImpl implements IEvaluationItemService 
{
    @Autowired
    private EvaluationItemMapper evaluationItemMapper;

    /**
     * 查询评教问卷项记录管理
     * 
     * @param evaluationId 评教问卷项记录管理主键
     * @return 评教问卷项记录管理
     */
    @Override
    public EvaluationItem selectEvaluationItemByEvaluationId(Long evaluationId)
    {
        return evaluationItemMapper.selectEvaluationItemByEvaluationId(evaluationId);
    }

    /**
     * 查询评教问卷项记录管理列表
     * 
     * @param evaluationItem 评教问卷项记录管理
     * @return 评教问卷项记录管理
     */
    @Override
    public List<EvaluationItem> selectEvaluationItemList(EvaluationItem evaluationItem)
    {
        return evaluationItemMapper.selectEvaluationItemList(evaluationItem);
    }

    /**
     * 新增评教问卷项记录管理
     * 
     * @param evaluationItem 评教问卷项记录管理
     * @return 结果
     */
    @Override
    public int insertEvaluationItem(EvaluationItem evaluationItem)
    {
        return evaluationItemMapper.insertEvaluationItem(evaluationItem);
    }

    /**
     * 修改评教问卷项记录管理
     * 
     * @param evaluationItem 评教问卷项记录管理
     * @return 结果
     */
    @Override
    public int updateEvaluationItem(EvaluationItem evaluationItem)
    {
        return evaluationItemMapper.updateEvaluationItem(evaluationItem);
    }

    /**
     * 批量删除评教问卷项记录管理
     * 
     * @param evaluationIds 需要删除的评教问卷项记录管理主键
     * @return 结果
     */
    @Override
    public int deleteEvaluationItemByEvaluationIds(Long[] evaluationIds)
    {
        return evaluationItemMapper.deleteEvaluationItemByEvaluationIds(evaluationIds);
    }

    /**
     * 删除评教问卷项记录管理信息
     * 
     * @param evaluationId 评教问卷项记录管理主键
     * @return 结果
     */
    @Override
    public int deleteEvaluationItemByEvaluationId(Long evaluationId)
    {
        return evaluationItemMapper.deleteEvaluationItemByEvaluationId(evaluationId);
    }

    @Override
    public List<EvaluationItem> getEvaluationList(Long evaluationId) {
        List<EvaluationItem> evaluationList = evaluationItemMapper.getEvaluationList(evaluationId);
        JSONArray jsonArray=new JSONArray();
        for (EvaluationItem evaluationItem:evaluationList
             ) {
            JSONObject jsonObject=new JSONObject();
            jsonObject.put("name",evaluationItem.getSelectedOption());
            jsonArray.add(jsonObject);
        }
        return Collections.arrayToList(jsonArray.toArray());
    }
}
